Template Credit: Adapted from a template made available by Dr. Jason Brownlee of Machine Learning Mastery. [https://machinelearningmastery.com/]
SUMMARY: This project aims to construct a predictive model using a TensorFlow convolutional neural network (CNN) and document the end-to-end steps using a template. The 7000 Labeled Pokémon dataset is a multi-class classification situation where we attempt to predict one of several (more than two) possible outcomes.
INTRODUCTION: The dataset owner worked on a Pokémon classification project and made the dataset available on Kaggle. The dataset includes 150 Pokémon’s with 25 to 50 images for each Pokémon. Unfortunately, most images have low resolution, so we should be mindful of the results that we can obtain from this dataset.
ANALYSIS: The model's performance achieved an accuracy score of 57.17% after 50 epochs using a validation dataset with 15% of total images. After tuning the learning rate, we improved the accuracy rate to 65.24% using the same validation dataset.
CONCLUSION: In this iteration, the TensorFlow DenseNet201 CNN model appeared to have limited effectiveness in modeling this dataset.
Dataset Used: 7000 Labeled Pokémon Dataset
Dataset ML Model: Multi-class image classification with numerical attributes
Dataset Reference: https://www.kaggle.com/lantian773030/pokemonclassification
One potential source of performance benchmarks: https://www.kaggle.com/lantian773030/pokemonclassification/code
# # Install the packages to support accessing environment variable and SQL databases
# !pip install python-dotenv PyMySQL boto3
# Retrieve GPU configuration information
gpu_info = !nvidia-smi
gpu_info = '\n'.join(gpu_info)
if gpu_info.find('failed') >= 0:
print('Select the Runtime → "Change runtime type" menu to enable a GPU accelerator, ')
print('and then re-execute this cell.')
else:
print(gpu_info)
Thu Jan 27 00:52:04 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.91.03 Driver Version: 460.91.03 CUDA Version: 11.4 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Quadro RTX 5000 Off | 00000000:00:05.0 Off | Off |
| 33% 25C P8 7W / 230W | 0MiB / 16125MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
# Retrieve memory configuration information
from psutil import virtual_memory
ram_gb = virtual_memory().total / 1e9
print('Your runtime has {:.1f} gigabytes of available RAM\n'.format(ram_gb))
if ram_gb < 20:
print('To enable a high-RAM runtime, select the Runtime → "Change runtime type"')
print('menu, and then select High-RAM in the Runtime shape dropdown. Then, ')
print('re-execute this cell.')
else:
print('You are using a high-RAM runtime!')
Your runtime has 31.6 gigabytes of available RAM You are using a high-RAM runtime!
# Retrieve CPU information from the system
ncpu = !nproc
print("The number of available CPUs is:", ncpu[0])
The number of available CPUs is: 8
# # Mount Google Drive locally for loading the dotenv files
# from dotenv import load_dotenv
# from google.colab import drive
# drive.mount('/content/gdrive')
# gdrivePrefix = '/content/gdrive/My Drive/Colab_Downloads/'
# env_path = '/content/gdrive/My Drive/Colab Notebooks/'
# dotenv_path = env_path + "python_script.env"
# load_dotenv(dotenv_path=dotenv_path)
# Set the random seed number for reproducible results
RNG_SEED = 88
import random
random.seed(RNG_SEED)
import numpy as np
np.random.seed(RNG_SEED)
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import os
import sys
import math
# import boto3
import zipfile
from datetime import datetime
from sklearn.metrics import classification_report
from sklearn.metrics import confusion_matrix
from sklearn.metrics import accuracy_score
import tensorflow as tf
tf.random.set_seed(RNG_SEED)
from tensorflow import keras
from tensorflow.keras.callbacks import ReduceLROnPlateau
from tensorflow.keras.preprocessing.image import ImageDataGenerator
# Begin the timer for the script processing
START_TIME_SCRIPT = datetime.now()
# Set up the number of CPU cores available for multi-thread processing
N_JOBS = 1
# Set up the flag to stop sending progress emails (setting to True will send status emails!)
NOTIFY_STATUS = False
# Set the percentage sizes for splitting the dataset
TEST_SET_RATIO = 0.2
VAL_SET_RATIO = 0.15
# Set the number of folds for cross validation
N_FOLDS = 5
N_ITERATIONS = 1
# Set various default modeling parameters
DEFAULT_LOSS = 'categorical_crossentropy'
DEFAULT_METRICS = ['accuracy']
DEFAULT_OPTIMIZER = tf.keras.optimizers.Adam(learning_rate=0.0005)
CLASSIFIER_ACTIVATION = 'softmax'
MAX_EPOCHS = 50
BATCH_SIZE = 32
NUM_CLASSES = 150
# CLASS_LABELS = []
# CLASS_NAMES = []
# RAW_IMAGE_SIZE = (1280, 720)
TARGET_IMAGE_SIZE = (224, 224)
INPUT_IMAGE_SHAPE = (TARGET_IMAGE_SIZE[0], TARGET_IMAGE_SIZE[1], 3)
# Define the labels to use for graphing the data
TRAIN_METRIC = "accuracy"
VALIDATION_METRIC = "val_accuracy"
TRAIN_LOSS = "loss"
VALIDATION_LOSS = "val_loss"
# Define the directory locations and file names
STAGING_DIR = 'staging/'
TRAIN_DIR = 'staging/PokemonData/'
VALID_DIR = ''
TEST_DIR = ''
TRAIN_DATASET = 'PokemonData.zip'
# VALID_DATASET = ''
# TEST_DATASET = ''
# TRAIN_LABELS = ''
# VALID_LABELS = ''
# TEST_LABELS = ''
# OUTPUT_DIR = 'staging/'
# SAMPLE_SUBMISSION_CSV = 'sample_submission.csv'
# FINAL_SUBMISSION_CSV = 'submission.csv'
# Check the number of GPUs accessible through TensorFlow
print('Num GPUs Available:', len(tf.config.list_physical_devices('GPU')))
# Print out the TensorFlow version for confirmation
print('TensorFlow version:', tf.__version__)
Num GPUs Available: 1 TensorFlow version: 2.6.0
2022-01-27 00:52:10.030016: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1050] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2022-01-27 00:52:10.220016: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1050] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2022-01-27 00:52:10.221447: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:1050] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
# Set up the email notification function
def status_notify(msg_text):
access_key = os.environ.get('SNS_ACCESS_KEY')
secret_key = os.environ.get('SNS_SECRET_KEY')
aws_region = os.environ.get('SNS_AWS_REGION')
topic_arn = os.environ.get('SNS_TOPIC_ARN')
if (access_key is None) or (secret_key is None) or (aws_region is None):
sys.exit("Incomplete notification setup info. Script Processing Aborted!!!")
sns = boto3.client('sns', aws_access_key_id=access_key, aws_secret_access_key=secret_key, region_name=aws_region)
response = sns.publish(TopicArn=topic_arn, Message=msg_text)
if response['ResponseMetadata']['HTTPStatusCode'] != 200 :
print('Status notification not OK with HTTP status code:', response['ResponseMetadata']['HTTPStatusCode'])
if NOTIFY_STATUS: status_notify('(TensorFlow Multi-Class) Task 1 - Prepare Environment has begun on ' + datetime.now().strftime('%A %B %d, %Y %I:%M:%S %p'))
# Reset the random number generators
def reset_random(x=RNG_SEED):
random.seed(x)
np.random.seed(x)
tf.random.set_seed(x)
if NOTIFY_STATUS: status_notify('(TensorFlow Multi-Class) Task 1 - Prepare Environment completed on ' + datetime.now().strftime('%A %B %d, %Y %I:%M:%S %p'))
if NOTIFY_STATUS: status_notify('(TensorFlow Multi-Class) Task 2 - Load and Prepare Images has begun on ' + datetime.now().strftime('%A %B %d, %Y %I:%M:%S %p'))
# Clean up the old files and download directories before receiving new ones
!rm -rf staging/
# !rm PokemonData.zip
!mkdir staging/
if not os.path.exists(TRAIN_DATASET):
!wget https://dainesanalytics.com/datasets/kaggle-7k-labeled-pokemon/PokemonData.zip
zip_ref = zipfile.ZipFile(TRAIN_DATASET, 'r')
zip_ref.extractall(STAGING_DIR)
zip_ref.close()
CLASS_LABELS = os.listdir(TRAIN_DIR)
print(CLASS_LABELS)
['Weezing', 'Magneton', 'Horsea', 'Rhydon', 'Meowth', 'Weedle', 'Machoke', 'Ivysaur', 'Vulpix', 'Snorlax', 'Persian', 'Rhyhorn', 'Cloyster', 'Mew', 'Poliwrath', 'Muk', 'Wartortle', 'Haunter', 'Koffing', 'Drowzee', 'Clefairy', 'Golem', 'Grimer', 'Venomoth', 'Venonat', 'Gastly', 'Gyarados', 'Omastar', 'Sandslash', 'Pidgey', 'Lickitung', 'Geodude', 'Raticate', 'Oddish', 'Dragonair', 'Hypno', 'Pidgeot', 'Charmeleon', 'Beedrill', 'Rapidash', 'Nidorina', 'Shellder', 'Jynx', 'Kingler', 'Poliwhirl', 'Arcanine', 'Diglett', 'Magikarp', 'Bellsprout', 'Eevee', 'Slowpoke', 'Caterpie', 'Golbat', 'Alolan Sandslash', 'Aerodactyl', 'Growlithe', 'Spearow', 'Venusaur', 'Psyduck', 'Gengar', 'Kadabra', 'Dragonite', 'Sandshrew', 'Farfetchd', 'Golduck', 'Metapod', 'Marowak', 'Kakuna', 'Arbok', 'Ditto', 'Gloom', 'Blastoise', 'Krabby', 'Jigglypuff', 'Machamp', 'Seadra', 'Hitmonchan', 'Porygon', 'Onix', 'Electrode', 'Pikachu', 'Alakazam', 'Vaporeon', 'Hitmonlee', 'Charizard', 'Mankey', 'Doduo', 'Fearow', 'Zubat', 'Staryu', 'Butterfree', 'Slowbro', 'Victreebel', 'Squirtle', 'Pidgeotto', 'Tentacool', 'Parasect', 'Bulbasaur', 'Omanyte', 'Clefable', 'Moltres', 'Zapdos', 'Primeape', 'Kabuto', 'Scyther', 'Nidoqueen', 'Dratini', 'Electabuzz', 'Nidorino', 'Exeggcute', 'Chansey', 'Pinsir', 'Tentacruel', 'Paras', 'Graveler', 'Vileplume', 'Articuno', 'Ponyta', 'Rattata', 'Magnemite', 'Flareon', 'Tangela', 'Mewtwo', 'Cubone', 'Starmie', 'Weepinbell', 'Lapras', 'Raichu', 'Seel', 'Dodrio', 'Dugtrio', 'Magmar', 'Kabutops', 'MrMime', 'Seaking', 'Voltorb', 'Tauros', 'Abra', 'Nidoking', 'Poliwag', 'Charmander', 'Ekans', 'Jolteon', 'Ninetales', 'Wigglytuff', 'Dewgong', 'Machop', 'Kangaskhan', 'Goldeen', 'Exeggutor']
# Brief listing of training image files for each class
for c_label in CLASS_LABELS:
training_class_dir = os.path.join(TRAIN_DIR, c_label)
training_class_files = os.listdir(training_class_dir)
print('Number of training images for', c_label, ':', len(os.listdir(training_class_dir)))
print('Training samples for', c_label, ':', training_class_files[:5],'\n')
Number of training images for Weezing : 50 Training samples for Weezing : ['d7759ca041a54e40bcd0e5983593a398.jpg', '91e6d87ec73143f6870b49711c64916b.jpg', 'df575a5993254fbca9cdea90dd91588d.jpg', 'dbb9cf5baf0d4db7aa4106fe500713fc.jpg', '55da5238b2a04623b61594716a59bf6e.jpg'] Number of training images for Magneton : 41 Training samples for Magneton : ['74701c4706d24524b0e6824df017efb7.jpg', 'e91130d163b34d00861978d45b3fb469.jpg', '1d55877ba9b4494bb001171901671932.jpg', '7c768164302046448715448739d0212e.jpg', '60e1bc64ead04f18aba351a6e2db5f75.jpg'] Number of training images for Horsea : 54 Training samples for Horsea : ['bd17862b896a449da70d45c1b827da94.jpg', '131f3e3d7bb14e12bfedb59ed552f912.jpg', '766dbe0c94404183b230c0206157d08a.jpg', '2641402ac3804ff8812d1735b0a508ed.jpg', '49874a3c8de540d9abf96d312eb6eb07.jpg'] Number of training images for Rhydon : 50 Training samples for Rhydon : ['f3e42dbd8faf490294696b956c987f86.jpg', 'c579ed737b8c4f7f92bb6f7520d7ed2b.jpg', 'e0cc027ddbd448ecaec2503aa00a05df.jpg', '522b22f6e8a2472095c437c89840d82d.jpg', '2089381e11564f3ca2e89e1b459a2bd7.jpg'] Number of training images for Meowth : 26 Training samples for Meowth : ['643aae5a7c884a888fc453e6384fcbd8.jpg', 'e1a84e379ad24e649ffb700008470a59.jpg', '9817965c4a8a450db922841f508d5463.jpg', '1bddb25696434dcd9607e4bef90bdf9d.jpg', 'fd3745e9f13647e3a8b809a17f76077b.jpg'] Number of training images for Weedle : 49 Training samples for Weedle : ['fc06c8dc20344e91ac92db51d5bb9cee.jpg', '3f0c6f1af3484776851ee27f412c6641.jpg', 'b43f13543a4b479eb54c229eb03a69b0.jpg', 'e7e5887c3326445c9b95b271e9e4b428.jpg', '6c57bba3252846e0a604aa585eaad7b9.jpg'] Number of training images for Machoke : 42 Training samples for Machoke : ['44f00ef90e60434692420db8d72258ed.jpg', 'bdd06ed38d86447a98c64054f8671711.jpg', '6ac4fdab2f144a7c840f79d497a1e1eb.jpg', '62c2353c40a648eb856910f686e484e4.jpg', 'b3c9c9be835b4134861ed740ed0faf4d.jpg'] Number of training images for Ivysaur : 40 Training samples for Ivysaur : ['4b17ca67b81e46ac8babcf0f0dac6b99.jpg', '0bd753025d474242b7370c47994586bc.jpg', '93fd3a08a0f8409e8db86ca66a7381ff.jpg', 'eab8e864dd4b4c6691381f8b7301d493.jpg', '337d0cc23a4a4f4d9239732e8abfaaf7.jpg'] Number of training images for Vulpix : 50 Training samples for Vulpix : ['fc8ac2dd3acc441898efadefd47d6d47.jpg', '466ec99f1278464798bbfab68a7d0a4b.jpg', '954632b91fc8489f85b308efab2ed173.jpg', '09408dd12da74f3c831e44bd977bf174.jpg', 'fc8fd886de6a405180e2f74d13d08b10.jpg'] Number of training images for Snorlax : 59 Training samples for Snorlax : ['715842fff5aa456db9eacd3a129b0736.jpg', '3f2a77852be142759447017aa86ade92.jpg', '3163ec5c0fdb4fda8654ba2c7089169a.jpg', '6ec964a728b6449cb10b3863f6c1bd4f.jpg', '45aacf9ba65543e08c2a9959c7a31b76.jpg'] Number of training images for Persian : 37 Training samples for Persian : ['d602afc0dc414031bb15121ec9df0e72.jpg', '72ee6c24948e43028038e3e1688ec250.jpg', '54b3d457e4f44a01b55153a72b089126.jpg', '93708d1d385e4eca8ae5499776c86da5.jpg', '0fb54c2e20b84a7986d5ec724dc27466.jpg'] Number of training images for Rhyhorn : 41 Training samples for Rhyhorn : ['46e1809f37704ee2917bd1f7dbc759bb.jpg', 'c7cb7326b09f43ecb301faf2c52b6f6a.jpg', '58b588d1c44d4e48a1bccc8b4aece9bc.jpg', '217996797adb4b1db6470943fdc2795b.jpg', '4ebe3268a6d9478ea57b5b7eb2677cd0.jpg'] Number of training images for Cloyster : 48 Training samples for Cloyster : ['628c1452799e4218b99ef1c64670d872.jpg', 'f4da9f40f0bb4cf2af2ffb91014c013a.jpg', 'a030c79cbb014e18891842da7a44a155.jpg', '9616d63585e74064b77beb8a06202e52.jpg', '7b4dfab0f77b4514840c967e8b9a6da9.jpg'] Number of training images for Mew : 54 Training samples for Mew : ['71f528bf7dba40f48ff36a232a7b2767.jpg', 'e337562415874269aeb44aa372163ace.jpg', '72dbd1960e8a49b5ab6d75837807ad76.jpg', 'f0598808553c42fa8079b873827a108c.jpg', '59de70706e6d4609aad9a4fe474ad9aa.jpg'] Number of training images for Poliwrath : 31 Training samples for Poliwrath : ['1b6173cbec21496b8cad0bab3c47073d.jpg', 'f0220e4418a140d99c181a1c91ad7dd6.jpg', '5be19f7973ed4f0fb657f494c1416e8d.jpg', '7b925e409f1c4ca08b3d7a962b8b6ad8.jpg', '774da4c8693e469d83d0dfd2246018b6.jpg'] Number of training images for Muk : 43 Training samples for Muk : ['46549609739e41c191ec1fba66a3f82c.jpg', '6f5db93c69104a0393f76afcb4479455.jpg', '368d1092717d40bb8f1ffc9384e46061.jpg', '594a83612df446faa4a960bccb3e541d.jpg', '9ad0884fa50f4abba397497c5ec4495f.jpg'] Number of training images for Wartortle : 48 Training samples for Wartortle : ['86dc29b8fee648abb8d9d4be46863bdb.jpg', '54c5b848d6a5412da32ca0431180428a.jpg', 'ca010ffc1da748cc9c4ea8f11bfdd65f.jpg', '9825e513633e47558b50a89498fadc86.jpg', '0e3d765b33414c0dbcbca488834b32ea.jpg'] Number of training images for Haunter : 48 Training samples for Haunter : ['38c488f7e922413481fba5de25d501ba.jpg', 'c88f5f7256a740d8b33cbbff9f631448.jpg', 'deda15b91edb439aaa91e9e8a91458ae.jpg', '73638ffac1d14fe398ba148dbe98ff01.jpg', '3cab30138fbd4bd48e9ad6c6d0762569.jpg'] Number of training images for Koffing : 48 Training samples for Koffing : ['7903f1b8ac8d4b0a90efde743a75e40e.jpg', 'f8cbc1242ecd4641917874663259c789.jpg', '667bf431fce544d7898a9c62bf00a843.jpg', 'bac3a82e15d64c759954fd090073278b.jpg', 'c5d7badebf05447e8479360ec58054ab.jpg'] Number of training images for Drowzee : 39 Training samples for Drowzee : ['e043f377741b4fce8bb930c8f37b603e.jpg', '90ccb8064f9c4d1998c5fcabba1af8cb-0.jpg', '31cabf7025de44548ee77223e50da69c.jpg', 'a0c84ec64bfd4051b74f28a9862f1850.jpg', 'a511fce76665430faefa678568b3819c.jpg'] Number of training images for Clefairy : 46 Training samples for Clefairy : ['9e85547e82d646a19359050376ed17f8.jpg', 'bcb44348ad7644b2b9ddd3cfdcdbf313.jpg', '6f2d93eccde941e6802ab22794646a5e.jpg', 'ed071b7f556145fe892e0d35748e3a28.jpg', 'a653cb3e7e4f42b3a69bdfff3533eb9e.jpg'] Number of training images for Golem : 46 Training samples for Golem : ['c05f054b95b645269f730ec6652b568d.jpg', '974ed3485dcd49f792e66aa3e28b1f57.jpg', '9d8debfa0825414a8af30eef2a8db3f8.jpg', '18a662e7006a465ab616c75789cc6bbe.jpg', 'b7a6b9e9a03343a48c6a2e1330de1b2e.jpg'] Number of training images for Grimer : 44 Training samples for Grimer : ['f946a7335e9248fda9f4f4f65f4d0e89.jpg', '6b5b495470e94f13a2bb740496f8fd04.jpg', 'a27a9ce053134f32b95b0caffa9405ad.jpg', '4713427e4ead4d71aa660e13c31b3c0c.jpg', 'ebb53ffb95404c30982c54cbfc1185bb.jpg'] Number of training images for Venomoth : 52 Training samples for Venomoth : ['1b22b6f2203e4e2d8c0c8e992a33dcd6.jpg', '20127bfc7fb5443984fffc886465ad80.jpg', '7267b6b10afc453a98100ef4251e0844.jpg', 'a686528779854df0b056839799b08031.jpg', 'e8c688bb5ce0486491d87259f04c6d81.jpg'] Number of training images for Venonat : 47 Training samples for Venonat : ['952cd99532184a11b8df6dd132a63bc0.jpg', '11a1fcd8f49a436fb14361b20ab2f571.jpg', '20ef4b5ea2f64289954a4ece4a3ac00f.jpg', '3aebdb7b625a4827a6ea04d1e526900b.jpg', '54f88e3a75664b30a769c03f0f7086d5.jpg'] Number of training images for Gastly : 44 Training samples for Gastly : ['85d5bb85d4d743ca8bcd6849b53c61f9.jpg', '39cc2004f0f749bba49a5ebcc4d14ad5.jpg', 'd947194c2ff44799980fa92190cb7c49.jpg', 'c9886b9a065e43feb36c202b2fdadcd9.jpg', '51b862dc09b542f98e13240ebb7cac02.jpg'] Number of training images for Gyarados : 46 Training samples for Gyarados : ['03dae0c0be3d49c5a4e4d85a4c1c4c3b.jpg', '1c131f701fec44bf87951c62f413e8ef.jpg', '79622e7cfd424ed5a8f97fda730b545b.jpg', 'd76253a82d4e4e6ab0291d9ebc44c625.jpg', 'eb300bab0fb44a02a2ddb48d413d4d30.jpg'] Number of training images for Omastar : 43 Training samples for Omastar : ['0e1fd67032a4440d9176ec6bfc3899f4.jpg', '670f51cc42684297bf545ecf1bf2be6e.jpg', '8f78a4da511d42f6ab160090e809fcae.jpg', '8dd361269f0e4a66ad5813f106b100ac.jpg', '175c448dc21a4ccc91629979e971d6ce.jpg'] Number of training images for Sandslash : 45 Training samples for Sandslash : ['a92d8ebff0914c33a8ee36325635da08.jpg', '17b2803a53d34a2ba1f465df16bb1f7b.jpg', '3a872ba64cd24dac87ece4b6baa2601e.jpg', '008200e3c79b4a1787b66afcab7d6228.jpg', '526fbccc2af94a289aa1b705090e90ab.jpg'] Number of training images for Pidgey : 48 Training samples for Pidgey : ['47c5ba3fab7844e6b171454a9062b888.jpg', '456112d8f7b04eb69df80833167d5a6b.jpg', 'a961e0a315e14a06907d8a6258c959d5.jpg', 'cbba6f2746494393b7d3f6b38f64e1de.jpg', '74ed3b6458774b2ba56d3be9564c4809.jpg'] Number of training images for Lickitung : 48 Training samples for Lickitung : ['144ffe27d3014750afeb64709feee0aa.jpg', '0d55a57bf2bd4ae7b9c4a74ee2089fd4.jpg', 'fa81286ba9144754a9773a8c8c499d66.jpg', 'c918f31f63404b7c84f3e2698ee4ddf0.jpg', 'f226532368504330bcde592a4c3fe567.jpg'] Number of training images for Geodude : 35 Training samples for Geodude : ['9b3001fddc0249679915a7e68b409278.jpg', '1ed30604aa4f40139f1f9286fc7d7a9b.jpg', '458344d4e48a4837aedb84340bacd053.jpg', 'b700656e113c443b917f8a2823120d23.jpg', '2e15980d1c5f41768e344d4dec9a68f5.jpg'] Number of training images for Raticate : 41 Training samples for Raticate : ['28dc1d1ef97147fcad71e8c3ca3298cf.jpg', 'db31d521f16f4d11bf854dc9e06c28e1.jpg', '13eb043f21d14287a1318f87e9c77c04.jpg', 'e08208297ee240a2b81d9924d366e593.jpg', '0d617b3b555d4ec1921718b6f4184e88.jpg'] Number of training images for Oddish : 51 Training samples for Oddish : ['00cb794a5c3f42b6a04905116f60d44d.jpg', 'a253b2c98c8842aaafa72eaaaac6f960.jpg', '4ddaefbc8a824c2bbf862c1291753ad1.jpg', 'c8ebeb2150bf430ebfebf8b7306afcd3.jpg', 'f34e9cb3e0fc4480a54479fe93dd30f1.jpg'] Number of training images for Dragonair : 42 Training samples for Dragonair : ['a972bd91c54e41858b75faa4dd299a5a.jpg', '8d35302d0dcd42079073c4da256f324f.jpg', '8a789741636c44118c2b6908c7a2e7ee.jpg', '23d9b4c374914321abd2e18a18ea926a.jpg', 'a3b11af7e60745288e187aff89ebeb2d.jpg'] Number of training images for Hypno : 47 Training samples for Hypno : ['0a797b84d0324947bb5ac5d523b4d1eb.jpg', 'd1d6248f40914d1dac69a3ebe956009d.jpg', 'faeb1d29e52e42e99d6e22b67ab3fb14.jpg', 'bb08cc53ad90470381caf17b9d979350.jpg', '0965b43428a5448b9ba66715eaf5d1cc.jpg'] Number of training images for Pidgeot : 43 Training samples for Pidgeot : ['fe43820ae5124419b25c576e277af28b.jpg', '6487a566693e435d92b108515c8c299d.jpg', '78e1bbee477045298e6e024e603f4ff7.jpg', '37d0130b4b9c407e86ee319e1607a4dd.jpg', '89a9a178b47944bfa239aba77937267c.jpg'] Number of training images for Charmeleon : 46 Training samples for Charmeleon : ['516c6ada3b6a4dd2907759796fde8622.jpg', 'e66148bea53446b4aa0a2fade763c39e.jpg', '2894414249b743a595d738959962620a.jpg', '6470de72396846eba9c547d0ba23caf6.jpg', '7fda6fc46c7a40028e1b10b75e3ceefb.jpg'] Number of training images for Beedrill : 34 Training samples for Beedrill : ['bf9c95ffa8e84eec80b1a09407c8b47e.jpg', '0fce3cf0d2b947649b6b27235de5465d.jpg', '74c81db86ad54993a8dd846c7b55eb07.jpg', '0e0ce5eff63d443b9648654f4d1aa992.jpg', '2fd93e226abc4937a5669c56192d9f7d.jpg'] Number of training images for Rapidash : 48 Training samples for Rapidash : ['36ee25d2bd534842aa8987570befb336.jpg', 'a59e3f91fe374e2cb516842ce8c56492.jpg', 'dc30cf658b204f719e0882c5f07a7813.jpg', 'bb7ddac66e694278aacf0769bf36c39d.jpg', '2a373754500d4b9c8917a82db50cf1c4.jpg'] Number of training images for Nidorina : 41 Training samples for Nidorina : ['96510273e6e94c71ba5f5d1dcc4afd8b.jpg', '356b0fb4a6474c33bd3dc9b313c8e673.jpg', 'b230032e24f24d4da02e37b5481ed743.jpg', '44cdeb2ef6f7425ca517391a74a838a6.jpg', '79b90d8720b441feb3d0389e05fcae23.jpg'] Number of training images for Shellder : 46 Training samples for Shellder : ['ececb14168734e68874d41555f1807e3.jpg', '2e89432058d448ababc6a191a0a0c5af.jpg', '92cb90b9a8904baaa04307217b2f24ba.jpg', '610e918d6e714f46957f724a9ee3c6d3.jpg', '89bebf55f19e4e8585444f08b15d123b.jpg'] Number of training images for Jynx : 49 Training samples for Jynx : ['c2bfacc6e8154e6b853d8291df8d189e.jpg', 'ab740ad45d18450d882847af9bce365a.jpg', '87567d744ad84518bfecb8b3c888993f.jpg', '19dc6441cce546b7a3804882399461f3.jpg', '491a9088ccab4fb686008bc28334eac3.jpg'] Number of training images for Kingler : 47 Training samples for Kingler : ['daeaef01313146e897b09b19372ff227.jpg', 'd102bef00f5a40a8a2e0cf1301e1abf9.jpg', '53c1bcbc7d7f411d984d139f8ec620f0.jpg', '479d328462fa4d4f8ce0e490830b5e8e.jpg', '0c4fb17cc36641e4a4a67fc96b4b003b.jpg'] Number of training images for Poliwhirl : 50 Training samples for Poliwhirl : ['82158b93b226423bbe2cbe3c7dd6cdfd.jpg', '837d67e56bf741c194bc492f9ded7332.jpg', 'ef4d09c9e96c4fc1b2bdb1b427a92820.jpg', 'f682d73aa77b481eb379af80c030209d.jpg', 'baffb1c0f9474817b854726338e3d54d.jpg'] Number of training images for Arcanine : 41 Training samples for Arcanine : ['e25efe60ae26452d8cbf057c71197178.jpg', '91dbfa19b69345a29d055e9824665966.jpg', 'a40f60338b4148c38d2593c17c101cd9.jpg', '0c5a0155f9334ac58b7bd2b577a7f0be.jpg', '866cbbfb75334c819faa017e266bd2f5.jpg'] Number of training images for Diglett : 39 Training samples for Diglett : ['d49cd4e610e0429088615980018b3029.jpg', '3d5d7f18d0a74ef19d2fc521bf19926a.jpg', 'acda840de1a543dabbadd23d7d8fa04f.jpg', 'af5a2a40e244439080f785d1e5bd6230.jpg', '9b9eb95e441447bfa9f47c1b52ea1a23.jpg'] Number of training images for Magikarp : 44 Training samples for Magikarp : ['a1b7861fc0184e08891f9fe1f4d3e8ce.jpg', 'd7dd4551704945feb0b642ae63f44aa8.jpg', '48a3ff18e6114b3085f0bbb5372e5238.jpg', 'd59c86e725cd484b9b2f3454391c69e1.jpg', '28f3bb46c2a34b8b8b2ee8139163f2e9.jpg'] Number of training images for Bellsprout : 40 Training samples for Bellsprout : ['1ef0add51b1940639726dc02e3b344a7.jpg', '8304fad4bc20428daf87a2079e2d3a0b.jpg', 'a1d866b4268e49eb9ec3fa101e3c2603.jpg', '55aab9574b014428acb9dd2adf83b923.jpg', '219f51f22666445ba345fc36f09c91dc.jpg'] Number of training images for Eevee : 37 Training samples for Eevee : ['f5d029c7ef0145cba58cb3cebff2fbab.jpg', '2416e30276434d3dbea498a1ce81cf4d.jpg', 'eb68c66324c54a17bb87f5bcba7dc7ad.jpg', 'ac0f83ea3f9f47799d399fc92329b943.jpg', 'b79be62748e84fc98489f9dfc22342c1.jpg'] Number of training images for Slowpoke : 41 Training samples for Slowpoke : ['06c3c4c981dc4971bb49a4c7e4a071ce.jpg', '844032e98ec0407aa2d6096f22ed814e.jpg', '50a43335ce004bd199a565719f18e749.jpg', 'c7735f3257cc43e0abe4661d4e411dff.jpg', '3ab3809de3584150b0cf9b188d19387a.jpg'] Number of training images for Caterpie : 37 Training samples for Caterpie : ['df570143699c4ad5bf08794bdaad1bfc.jpg', 'bc5e2f091a5f4a68bd01fb93c4068f07.jpg', '912f544ed21d44989db048c52016114b.jpg', 'c535609ddcf143bcae81b9ee884eb64c.jpg', '81a42ca1becd453f86d1a6cf6e7ae6cd.jpg'] Number of training images for Golbat : 48 Training samples for Golbat : ['af30483e382240d38890dec39e083b08.jpg', '436d0e1a959d4bf69b90699b516c27c2.jpg', '24ba7d2bb1a74726a88f88c5d767da5f.jpg', 'ffa80a4318934766a66b53bcf07a319b.jpg', '5f2f1965691041c69d190737a04c3c11.jpg'] Number of training images for Alolan Sandslash : 41 Training samples for Alolan Sandslash : ['e36ff01e6c044dc0bff9098a1af933a2.jpg', 'images (7).jpeg', 'Alolan Sandslash.png', 'images (3).jpeg', 'images (2).jpeg'] Number of training images for Aerodactyl : 35 Training samples for Aerodactyl : ['0598db9a1de245db9719661466001511.jpg', 'd995b3fc3cbe47e4811493dd8f1c4ada.jpg', '35933037ff854c2784e5199f6dc8a728.jpg', '79f94a276b9a4e06b4884c3b77ef4622.jpg', 'f6de83f1ed034679bf49b84e0af203ce.jpg'] Number of training images for Growlithe : 44 Training samples for Growlithe : ['2bd0a0d4d77b4ba4a679f39469c32841.jpg', 'c2727a4de4b44fd7a0b9f44f6e0e582d.jpg', '91299dae1c7d406eaeb63f175439aaee.jpg', '02323daeeae54ef6bb90de051b73a8fb.jpg', '7a9a39e6183747f6b6e810d4b6187142.jpg'] Number of training images for Spearow : 55 Training samples for Spearow : ['a786114629164ce499c5a9fa2dd7f796.jpg', '5f57d7b66b764ed8b1578b77389dce01.jpg', 'ccf004d7699d4af1bb124a0fab547f61.jpg', '22ed38bee1ec4a75a7b5ff0429cac2d8.jpg', '3fad37fc00af41f8b50ab6d25970dd5e.jpg'] Number of training images for Venusaur : 66 Training samples for Venusaur : ['e0f62367da6a4ff79d2cb77c6ee002de.jpg', '6b58b374969e47e392b9152015a3bd05.jpg', 'bf07f75c99234eecaf99073220bb59d5.jpg', '6d35c87aca564650b76e37d67b40833a.jpg', 'c4ff56448286496dba5412c32227022d.jpg'] Number of training images for Psyduck : 40 Training samples for Psyduck : ['71fb2b037c8546fe90878172e357ace5.jpg', '8eb3ab4da8a44cda9ba15d48ce893a06.jpg', '05ddefcfae444d9daffd8e9ac5ea029a.jpg', '615dea76d8b3443d924ae37b3452cadf.jpg', 'aa7b74f0724e4bd8ab1439cc1bb48d0e.jpg'] Number of training images for Gengar : 49 Training samples for Gengar : ['c7de3b7904a348088a8d3b7f99f7b002.jpg', '950281305cb24bd8ba2683d633d437fd.jpg', '49d5af83aad040b681f0d15a3f2a7e2f.jpg', 'bb32fdf3c9d74f6da42b326f26da3554.jpg', '6eef290d92e84139bf68a31a34b62533.jpg'] Number of training images for Kadabra : 49 Training samples for Kadabra : ['e30a0c2d672743209b459dfc184d48c3.jpg', '206499ccd4f042828f36abf5ef302fa2.jpg', '7cf6f88e88dd4cf0b70dd481047130cf.jpg', '079a7ad0d3494c129ab8f8079eb6a2a9.jpg', '823d6a547616476db48e476cbf8f0c51.jpg'] Number of training images for Dragonite : 48 Training samples for Dragonite : ['9a9f67090307473bb8e51d4fcacf5237.jpg', 'd013679b593649f49daf9385e1b942eb.jpg', 'f28ab97db1c042618ad5720669f28074.jpg', '2f3c6935cac14dafbf9b2bc13d9992b2.jpg', '26ac306b10844ef59a9328e48aa621ec.jpg'] Number of training images for Sandshrew : 46 Training samples for Sandshrew : ['4fe614ec9c864560a5dbc579d9d4d9ed.jpg', '297cd037ba53434abb4f7b6602ae6d1e.jpg', '8a6813bd9dd14f0ca4256b4a5d7a268e.jpg', '790218d09a5848a8ab5071fefb6921c2.jpg', '0944c2ba6a7a4bd99e02f2e289c25c2a.jpg'] Number of training images for Farfetchd : 48 Training samples for Farfetchd : ['63e2c26b0cae4bb58ba7a48ccf40fea9.jpg', 'be7e65e449ad4c4394c9062ccee7fb18.jpg', '6e795b11c9a749c38884e32c0b84f465.jpg', '38b2a8c41abe4d11885ef7ea54e53fe1.jpg', '0cc45a8964ea413ab504852875cfe624.jpg'] Number of training images for Golduck : 46 Training samples for Golduck : ['ccdd9d5ad60c4367b94a9e0bc7bc5ef3.jpg', '80640de7d41f447682b254ad3922fe53.jpg', '5573e23602f9459eadadbaf41f47d7d6.jpg', 'bfdc0389ab404b459826385779436b30.jpg', '908a6a9eb6cf4ce6ac1913708c3f0e76.jpg'] Number of training images for Metapod : 53 Training samples for Metapod : ['df2be9a9d3f2465facd0f223115cb089.jpg', '837bde20cf0948f9a34c59f81bbfda41.jpg', '679ec6ca4439491ab04e568ddeb7981c.jpg', '144d46cee3624f61828716b965faaf05.jpg', 'f2abcd57df6541c3a61390936c1a324e.jpg'] Number of training images for Marowak : 30 Training samples for Marowak : ['a2bb3b406f71468995bbebab9c04e2e2.jpg', '065904fb15c94e57b3942ec5c9defebb.jpg', '7ce7f1c53d564c3d94cd2ac62f390451.jpg', 'ba7082fb16374218bab9de347c06fe8b.jpg', '3d654f207b614276967f7a832220b328.jpg'] Number of training images for Kakuna : 47 Training samples for Kakuna : ['ad0d8870fcd84d5bbcdabd79192e2586.jpg', '1ea2bf2addf3465693c19042d424f613.jpg', 'cadc360483174450acc7334fd475b3a7.jpg', 'a541787b2c7a47b2bdc2e0720fbc901e.jpg', '4e4cf47388b24a1f904063350b7c137d.jpg'] Number of training images for Arbok : 41 Training samples for Arbok : ['f8f3a75c630f4826a7b5bda5d0b562b2.jpg', 'ad5202b436824705b1ed0675eaa39454.jpg', 'e55152429d8f49d8a95f4c212d5b20f8.jpg', '1bdea5ec0133424db0076823c2c593bb.jpg', '22033fc3bf8c48f287d153442160a808.jpg'] Number of training images for Ditto : 40 Training samples for Ditto : ['5e623006ed0e4a23b72441aa8cf3e52c.jpg', '79d80d3f2c7c49bba5774d1f0876a17e.jpg', '30d96e12e0184984b7d0646886afbce6.jpg', '5009b86c4adb49059204c2614b81d71b.jpg', '4fa3fe0334324c84a9942d12f7abc97b.jpg'] Number of training images for Gloom : 49 Training samples for Gloom : ['15f57b6424b24656ab0f11b89d41b7b8.jpg', '8f99265a38e54ba5a90833d2603e1a7f.jpg', '26a4bbbcc5ed41a7b42f490784a4846c.jpg', '9b71dcd1bd5041329c5bdbccc0dfc7aa.jpg', '667518e5ba0a4bfbb26d494a79b2216e.jpg'] Number of training images for Blastoise : 42 Training samples for Blastoise : ['44a07063eba74f31b4065d13f61d5f65.jpg', '3e6a2a5f42da49019b1296d7714f8942.jpg', '71d3e2c30ad4403e9aa38958bb38e4d9.jpg', '0f0c54a9457345ccb96a52038295887a.jpg', 'b4ebae3b7cb34754b81da4538868aa14.jpg'] Number of training images for Krabby : 48 Training samples for Krabby : ['75ab869c6bb94932a8bb6d3e5496da0f.jpg', '3a0dbcb54aed4f18b8be6e09783e8e13.jpg', '2e24c47f51c74f049e307bfff318e910.jpg', '9453ed73b3f04de5bfaa6bcbc0c075c1.jpg', '328e8d7890f6435aa6aa10be08f87219.jpg'] Number of training images for Jigglypuff : 46 Training samples for Jigglypuff : ['5338239593f94d11be9955ae8cd74dc8.jpg', '38e570527f304645b6c2540f6a4d0d9c.jpg', '60981e7fa8934b779bfd75d1fc02109a.jpg', 'c7bf1535f45e49eb958c9f351438bd27.jpg', '5a2806b7efc1448e84d597d4fa694e72.jpeg'] Number of training images for Machamp : 53 Training samples for Machamp : ['ea18d76f60544ac8802fdc928d2c9472.jpg', '43f8c5af7af047c68b8ca1d21972a835.jpg', '177b9cfbe78b4faab0a3702aa167c159.jpg', 'c2f41bf6b4c24e21bd6e74c619345b72.jpg', '2e6acdc525e5467c9d6bf0d646cac2ce.jpg'] Number of training images for Seadra : 48 Training samples for Seadra : ['88eb60f88c8141d3be2ba0f232a6a1e6.jpg', '5c2af97798b9453e922a605db23efda0.jpg', '3d86af9959d240b498dd49a103735477.jpg', '1b139b8ee1f04cdf83d6bc9eb5317129.jpg', '8ee5401d74f5402caac378ce20ceb773.jpg'] Number of training images for Hitmonchan : 47 Training samples for Hitmonchan : ['d905c0f407844d80b60952f12233d6ee.jpg', 'd3e54156e45a4cbb997a34af54233b7f.jpg', '76b3eecff7d24b65b3e333b8c655ba70.jpg', 'bd9553c707e148b583d74a380f152a44.jpg', '1dfb78f677b1410eb7d02bb45e8655f7.jpg'] Number of training images for Porygon : 46 Training samples for Porygon : ['e17aa7a119ba462b8e39eea066a004a5.jpg', 'dcc73ed4d97f41338159c6f31a049617.jpg', '512d8d535ada48218a3403f79636a27a.jpg', '2e7122269bf94155b4bf526304f4b3b6.jpg', 'c33237094e5b45fba0d207ce928ccefa.jpg'] Number of training images for Onix : 42 Training samples for Onix : ['c782bf300e544629b6889a102c0d53d9.jpg', 'e27f8ec4c4424e349bd871063cd7d648.jpg', '16e63f9fdf004fd891bdb5f3180fc578.jpg', '151c530c9c2c4761bc05fdffa771f793.jpg', 'ffb08e8016394d26ab52e6b5f567b1d3.jpg'] Number of training images for Electrode : 51 Training samples for Electrode : ['9df192cc4a954318bcece91e1aa2c90a.jpg', 'fefb9510567b4992b8462976c4974d0b.jpg', '3eb6843a386249be922b60e671eed40f.jpg', '55cc9795fa75429d8fa076936bd5fee5.jpg', '51a87c6f133047eebbf6820a80750808.jpg'] Number of training images for Pikachu : 62 Training samples for Pikachu : ['7b7b1c9164064c8981b2f31f2feb873e.jpg', '00000011.png', '00000002.png', '00000205.jpeg', '00000030.jpg'] Number of training images for Alakazam : 26 Training samples for Alakazam : ['83d63caf8d904ea38f2a48e6ed926141.jpg', 'dcc693898ecc4f3e9766e66c510fcaa3.jpg', '30bb8818f4574e319d59835d98dc5959.jpg', '17613a713b6f4176bdd59d452627ef9a.jpg', '1115f34ff9884a6ab3ceaafa87a0dfd4.jpg'] Number of training images for Vaporeon : 59 Training samples for Vaporeon : ['feb09a03bf524fed9d20c2936bad83bb.jpg', 'c57ce2a9c7e84a03ba39b6a11d94119e.jpg', 'f9cab5c7385544d98d283e552e3692f8.jpg', 'cb31e6d1083849c699f4a8257a34a797.jpg', 'cf424e27913246d9838ecb9488422136.jpg'] Number of training images for Hitmonlee : 48 Training samples for Hitmonlee : ['90285d1665ac49babc751c5dd172d30f.jpg', '749c65d76dbf4b2fbe4e0642c4304d9b.jpg', 'f4303671b39541cf92a6d024a83f85f3.jpg', 'ad905f4a8f55403dabec012cc1b492ca.jpg', '33ac3b95ca9a460ebf71ff2e3372dbe3.jpg'] Number of training images for Charizard : 35 Training samples for Charizard : ['d386d94fe1064d92ad2f06d98c9662b7.jpg', '8678317629364576b100fd5f529e9a33.jpg', 'c399a271882740bf9ae466776845b3c5.jpg', '276db6bae3f445369ccf6d092df0e1e9.jpg', '2c1496237e104fbbb5d9c76a0151346f.jpg'] Number of training images for Mankey : 55 Training samples for Mankey : ['939e0f97eed24a37877cc23da0a32a8a.jpg', '054b20443d364e3981e085dae5bb6003.jpg', '2ece33ebf4244450ac5a0a6d93eeface.jpg', '54af7182e7b44dfdb89a7ff2ae03c18b.jpg', 'b59ad62e84114a06bc6d1432de2629aa.jpg'] Number of training images for Doduo : 35 Training samples for Doduo : ['837dd4096f9b462fa3afd0a54451f444.jpg', '93ed1a6b5eb140a9b7bbbf9541ef6f16.jpg', 'b258e4edf4474462bb17c2988fe0edbf.jpg', 'b558890de6584afeb07d367656ca1227.jpg', 'c57a5edd73cc4fcb984b22eab97dff8e.jpg'] Number of training images for Fearow : 48 Training samples for Fearow : ['b1e2ac81e98740d6961720dc901ba0f3.jpg', '8b6a3a7d8a0e4ce98d03f6f41b264a29.jpg', '732130f51ba04bfc8f04fe7220d2be1b.jpg', '33f69805942a467e83c43a69a74afb82.jpg', '1b9c59e3a9ca46a1a1caa7d220a315e4.jpg'] Number of training images for Zubat : 40 Training samples for Zubat : ['4ad16e1c6fc6400fa7a80c92ae04acf4.jpg', 'a610f2ab77e94b07aad53534149c678d.jpg', 'e6cba9a117d64d849fcc389e04e92e11.jpg', '677332b8c1a143abb0dc04eeb7404140.jpg', '3a10abadf13f41f48eb3126f013b3dbf.jpg'] Number of training images for Staryu : 47 Training samples for Staryu : ['1529ba6cb3424e93bf8798c4ed74e01e.jpg', '82d5b79311964554a46d934264292b1f.jpg', '97829d26a4b14ef7970d146b9f4b528c.jpg', 'cb5a3231d8e648edb385163e390eba5f.jpg', 'cb81a38407a241dbb4ae91568cb7dbf8.jpg'] Number of training images for Butterfree : 27 Training samples for Butterfree : ['f17cfce6153648cb9ca7e7c9f67291e4.jpg', '3accefccfbee483e88ac2e9ba2776d5e.jpg', '58fce659f7fd42b390154ff96bfc50dd.jpg', '31623268f2f848e5af07f8d7975194ba.jpg', '22995101397b4e059a03a274132fefb8.jpg'] Number of training images for Slowbro : 46 Training samples for Slowbro : ['8322759cde924f7ca8c3fb641948e395.jpg', 'Screen Shot 2019-08-12 at 8.34.39 PM.png', 'e942a9683b5e4379b8c1223fe31636aa.jpg', 'Screen Shot 2019-08-12 at 8.34.47 PM.png', 'dbc6785f4f3c43c3a43de8d38260eeb6.jpg'] Number of training images for Victreebel : 49 Training samples for Victreebel : ['bd3989b35b284698aab8993b7abc6645.jpg', 'a6e8e71d99654c7eba37e19eb80ebb24.jpg', 'b8e3fa876b714a13be4283c65f323670.jpg', 'fdc429bef56640b8a2c269ce91798165.jpg', '126305dca8674a38b705870cc3dee5b4.jpg'] Number of training images for Squirtle : 52 Training samples for Squirtle : ['00000022.png', '00000055.jpg', '00000000.png', '00000034.png', '00000030.jpg'] Number of training images for Pidgeotto : 40 Training samples for Pidgeotto : ['e3bd9c2edc464a2384b146ba129b97db.jpg', '8560aa89328c4c2fabaed2d6a736e290.jpg', 'ff15362f7fc24c61b3bd321f665eb6c8.jpg', '9053c0e97b00430da4969cad8f07ad14.jpg', '17981e80c3a548ff992687345f64c7b7.jpg'] Number of training images for Tentacool : 45 Training samples for Tentacool : ['fae6adaaec4e49cdac10bae972186674.jpg', 'a5fccffd89a84342b8171f3c58330f26.jpg', '2bccf2149d2f4ab783f4a0fa1300c760.jpg', '1dc5695e52354dc093aa60c00c6b5518.jpg', 'd3b77a4838e5459f96167d4cdbd47a4c.jpg'] Number of training images for Parasect : 43 Training samples for Parasect : ['8ab0957da3b34afba3def4444e3764dc.jpg', 'a9a0ad7b2a71499899627ff7f67d1887.jpg', '91fa5d75fe2b43dfbd962e1e9c5bef6b.jpg', '832a06052ae142cf99d0ab8fb6af7c51.jpg', 'd90c2050321842d19c5b1c22dab833c2.jpg'] Number of training images for Bulbasaur : 41 Training samples for Bulbasaur : ['00000000.png', '0a3a642e700b4153b115e0f645d273f1.jpg', '00000011.png', '00000008.png', '00000029.jpg'] Number of training images for Omanyte : 45 Training samples for Omanyte : ['3db7076daf9a4990af8c8af8deb8fc5c.jpg', '3dfcd7414b2349d1807d58bf6c145dfd.jpg', '7c065bf7d60743628f2bac1e183379d8.jpg', '9c3cf9a1f8ae4c39a50497a48e6a9ea9.jpg', '0e1707ef3db944979c993282436d792c.jpg'] Number of training images for Clefable : 38 Training samples for Clefable : ['1b3608aa8da645faa9b0ae6db8987604.jpg', '0e5578c666634ebfb96af164c6bccbc2.jpg', '959137f1fad94601aa1f4684c10599e8.jpg', '7c1bffa9f72348cebea79e73ad04e12e.jpg', '32c9af85d73c4283b92cdf55597932b0.jpg'] Number of training images for Moltres : 43 Training samples for Moltres : ['b8d33cc5906b44109cd9ab393b9222f5.jpg', 'd81fb7f8f2ab48e9aef39861537e56ad.jpg', 'd19de7b90ff547e39ee36e172d4625e1.jpg', '10044ca5d21f4e8082df29f25d50e8cc.jpg', '50440510fdd94b3dbfadd3144ab01b17.jpg'] Number of training images for Zapdos : 51 Training samples for Zapdos : ['c0d9680eeb85459f93205ba568c0bd8f.jpg', '47d069b9d46b4f2880a690acfdd599f6.jpg', '7260b5b88cdd4e31b2c1521601d05307.jpg', 'zapdos.jpg', '332439c1334c4b75bf6ffcd6d3ff15c2.jpg'] Number of training images for Primeape : 51 Training samples for Primeape : ['2d61f5cb73d14ef2a0d8e44feb30dc86.jpg', '692f888a77b64bb0923a840dd402b1c3.jpg', '1da2d32c8396415a96ac21af6732f056.jpg', 'cbc70975639047e99edfb924fcf71561.jpg', '0e3d7ec3bdc74077a16de3771c9dd85d.jpg'] Number of training images for Kabuto : 49 Training samples for Kabuto : ['b7d40b9c2caf447ebd29929e75f4581c.jpg', '0e4ebd90a170418992e7471730d5e388.jpg', '92f17e4537634e48a7f9f09fadb0b379.jpg', 'e17ab916749c4cb08db7a26023c7c426.jpg', '09e2756edbf945acbcf5d0d7118112ae.jpg'] Number of training images for Scyther : 57 Training samples for Scyther : ['b6265171b1cb49899bc2be605487622d.jpg', '0197e1cf38474cd6be848da61cbd5b46.jpg', '09716a5ea51d4921af99910bb93bc29d.jpg', '3b631609b48c40b08640033cf7b6817c.jpg', 'bc269476a2a541e4874a2bb2b73f35c2.jpg'] Number of training images for Nidoqueen : 52 Training samples for Nidoqueen : ['8cb9854e303948e7b649045b37f09e72.jpg', '281938eb6ec34b7d863dbe477a299249.jpg', '5b4843b38aea4d8a93646e799155ca5c.jpg', 'bc179475eebd47b686e25b9005f89d8f.jpg', 'ab3455a7f612468a862657a3d35adc95.jpg'] Number of training images for Dratini : 26 Training samples for Dratini : ['b808a16ce7fe4b96ac471b5c94bcc743.jpg', '2a74fb4a496d4b0397b4b2debdea0fa5.jpg', '08f8168539c54bfa8fb5641842183d5c.jpg', 'f82e28c358a14344932ec257c188786c.jpg', '8febde5ce6184b85b0469367c03f4493.jpg'] Number of training images for Electabuzz : 41 Training samples for Electabuzz : ['5484e5f1e93844e0820d8622fc512b1e.jpg', '16a1b08c4e1c4bf185da953b7745e707.jpg', 'c33b11976abd4840b7ce783c2a9c1790.jpg', '887cb444b8bf4104bac64fec13fa1a37.jpg', 'efe60154d3ee4867bbabfb7ff180f356.jpg'] Number of training images for Nidorino : 51 Training samples for Nidorino : ['f05ea8a5fe334839aa104487fb295c8b.jpg', '80fab270d5644c5ca9027ee946f54688.jpg', '880571cc69f44b788ccfbc029a155207.jpg', '962696ee8df246c1b4157ba5e8b1529c.jpg', '6ca902064c3d440e9eae463c91f77169.jpg'] Number of training images for Exeggcute : 46 Training samples for Exeggcute : ['020eea5bfc8741d28ca1929e294f28a3.jpg', 'a319d681b7544d22a1b4ef809da6bda2.jpg', 'f092cc8ad42843558a1adac00861afb1.jpg', 'f10d36aa1af7433bb1b84d5f2629001d.jpg', '895c78d8b8384e2aa110a6f80a88f46a.jpg'] Number of training images for Chansey : 43 Training samples for Chansey : ['8afe935981c1477a974a57ba1b7a6ba8.jpg', '202c6aeb2bb6408f847f0f677ae9a799.jpg', '79bbfbd1e25349699d972bf97e679589.jpg', '6855234d1b54464184d0fae220beeb2c.jpg', 'bef16283ea5a4876a4540ee1b30d39e2.jpg'] Number of training images for Pinsir : 41 Training samples for Pinsir : ['dc38f00c0f2544d090673d01010d9aa0.jpg', 'da86ac42ddd14baca19bd2d3e769bf07.jpg', '9096ce48c5224eff8e0a4463f9661f7f.jpg', '50d606fe71a64cd7b47fbebc14f145b9.jpg', '87863283f4814bb391047f9922a9df15.jpg'] Number of training images for Tentacruel : 47 Training samples for Tentacruel : ['7343f30c052f4974b83dd31ccaab7e32.jpg', 'c6b9f4264b2e4557a4863fec28550a48.jpg', 'a2251dadd6d94806a9ea2c1a7c2919b1.jpg', 'e1d7b15ce1b741b096690182aae0cdab.jpg', '4abab4fef5434182bcc59af827ada7f9.jpg'] Number of training images for Paras : 47 Training samples for Paras : ['85aad36b538a47bba78348ef0a70f73d.jpg', '36b8ad03438b480e9c5ff686b17d2283.jpg', '724278d940704093a26a2b66999ba6e5.jpg', 'bffcffd8be814463b7dd5af1764979e5.jpg', '7f2d4c1160fa428c8b7faabc8c58dca2.jpg'] Number of training images for Graveler : 39 Training samples for Graveler : ['d3786cbf0ac043c8a7356353ce2afc2a.jpg', '69ecfa3614d5419ab78ff8e415ec3b76.jpg', 'ac3db0c3a4c247d9895a459b0fcb1933.jpg', '04e6f1285a09433f8a191a5f0b22ec7f.jpg', 'be90e4fd18e94a7b843b1fa83b741dda.jpg'] Number of training images for Vileplume : 56 Training samples for Vileplume : ['6ecf448965604cf6b597220f659d0edb.jpg', 'c4bcc8b2576142d9a4ae034254b33ab0.jpg', 'f6de0b2a2d3342f68d6667b2ec09f93e.jpg', 'c6c97e140df349e0a271bf5ebd3facf5.jpg', '0a60b4bd7f98454e8ab57383e3ca8387.jpg'] Number of training images for Articuno : 45 Training samples for Articuno : ['22cd66736e594cf497303e570c8a5e41.jpg', '14e07b176d2b424689e52c9e1054a1d4.jpg', 'd3bb71d1f3094c15971ea6a985da84fe.jpg', '6e75071c181b41e6b06873baa8ea84c4.jpg', 'af2bb12b61a1494791a684c9e1e06cc0.jpg'] Number of training images for Ponyta : 45 Training samples for Ponyta : ['a4501bfd876c45bf876961059599acbb.jpg', '16c3a65771044f689656e16e0c56f1c0.jpg', '5ed4763b7e3e499c88161162090e5880.jpg', '564a1c4959974f36b5a25610f7e81f42.jpg', 'bb5cb309dc0e430bb008a76e2b9540fe.jpg'] Number of training images for Rattata : 43 Training samples for Rattata : ['eb5631155b20418581bad366bd86910e.jpg', 'c682cf68adfb49978783844b0d2b59c7.jpg', '57a399952cd844c5b32dd9c955893485.jpg', '47d3bc22085743ff87b7c69715bf53b7.jpg', '2704927f00b3433aa20b7f19e20e0aa9.jpg'] Number of training images for Magnemite : 46 Training samples for Magnemite : ['fe2a22f79ae341d982b42f515fc405e7.jpg', 'c0c6cec3e6a146b9aaced0292d77a4bb.jpg', '9137b3e2609343e9b5f480190fc9e362.jpg', '924805bd02ca409da9b4c4a8a2c1f3eb.jpg', 'e8223bb7b00c4be18a0e1836322f22d9.jpg'] Number of training images for Flareon : 45 Training samples for Flareon : ['ffb969e0d6954d2d9c1c41faa49d4e01.jpg', 'a403f06e227940019826d96deb7274b5.jpg', '3bc7a357194f4b78b5387319bcd9846d.jpg', '32d8b92dcf304dd3a35c78580bd39049.jpg', '564cbed943b342f19ed4cc6a97711376.jpg'] Number of training images for Tangela : 53 Training samples for Tangela : ['8b1eb0bf9def42a78e948e407287950c.jpg', 'f5581d689fec46f29fdd42cda3d1396f.jpg', 'f2cdcefbf8aa4878b277435bd0d2d6ee.jpg', '40d6ab44cfd545f9b5adc411953d35e5.jpg', '7efdcc106ccd49d990efbde02a7a9470.jpg'] Number of training images for Mewtwo : 54 Training samples for Mewtwo : ['3bedbd6570e34ab3a35fbb33fbd3735d.jpg', '9ca0f0fa41f5453d8aa97efd4c26084b.jpg', '00000026.png', '00000074.png', '00000002.jpg'] Number of training images for Cubone : 40 Training samples for Cubone : ['7ccc09c54c7345a6a640d0c3dfbec13b.jpg', 'b5c476ba2b8d4e25b4ddf03d82e8fb79.jpg', 'cccb56db6f074caab41e756155258a5f.jpg', '5f9add15bef14fc4837345a32f58160a.jpg', 'def8791a9fbc49e9952fbc6db6562f06.jpg'] Number of training images for Starmie : 49 Training samples for Starmie : ['dd595cbf62a84f5f8560a5a8e3c8bfe2.jpg', 'c5c174cfa2f841d38372661b99f8293a.jpg', 'bf64bfb8b56940f38b8bda67a86d3fd6.jpg', 'abe8b55504a548c0b6cd0b7596bf93f7.jpg', '2f6593d45bb94c22817ac26898d1e90f.jpg'] Number of training images for Weepinbell : 43 Training samples for Weepinbell : ['3300e15426d24bd39deef1a8484d2e4d.jpg', 'b993663316864bbcb3b563b60b60cf36.jpg', 'e2c9a1274448472a9fb9b586824e316b.jpg', 'faa43ab8d3574dea99e82a8b3c2daf84.jpg', 'cd71fed29c9d44218b507ee80256b35e.jpg'] Number of training images for Lapras : 53 Training samples for Lapras : ['27f433793c914bd1b5ced045696c6879.jpg', 'a40f79f871b74a82969e9f60b47a0913.jpg', '9778397e21924680ab55b9090dc39b9a.jpg', '491d8497f63b450fae59a90df52fd108.jpg', '48a9f6ed6e69406da32536b62c24e846.jpg'] Number of training images for Raichu : 51 Training samples for Raichu : ['e01353b4555344beafa3b1ee45119bff.jpg', '523c02dc74784b2b9e7a72fd6fd35d37.jpg', '0f14527de6c24852a11f480cb6843e18.jpg', '032fea5a87cf480181352d2319a34966.jpg', '72ff88f759cd42f6a22981b5e5790a02.jpg'] Number of training images for Seel : 48 Training samples for Seel : ['41a18e6183c74bbe94c17bfdabc975dd.jpg', 'e18ed7f4fe8f461e8d66b4ea5e400c71.jpg', '11c8374a27d14c3391d00a2f6d2cbe24.jpg', '03028663bbe94acead1cbfde2ab457b5.jpg', '980aba7150c6449ab6a167146ee2b043.jpg'] Number of training images for Dodrio : 39 Training samples for Dodrio : ['f2abeed3157f4c11a7d91e383ba3ebfa.jpg', '1f4ca783b24f4740b82636c81af018ed.jpg', '6f526f0aa9c1465699ec267d7a9cefb5.jpg', '9524fd15fb224c799d3582966e2076a9.jpg', '8bf305a7a9384b47853d26086cb499ef.jpg'] Number of training images for Dugtrio : 51 Training samples for Dugtrio : ['4fe6abb93f264ca9aa0dd9df22c118ad.jpg', 'c5effe52552a4076adf5bbc6c55bad34.jpg', 'a3e2a3bd9e6b4376914b6aa66470ca30.jpg', 'ec74846df98449469befcdbfd138f0e8.jpg', '12b14467613b475c8236233ac679b6fb.jpg'] Number of training images for Magmar : 44 Training samples for Magmar : ['c8c836ffcaae436e913f2d38ec7345ba.jpg', '58d91a4278594a54b6a1b4ed902fcb37.jpg', 'f9b3a9e73f4449f78f49ede960bd8f5a.jpg', '0f935d4f4216447da93bae5d20c060e3.jpg', '1583419740744c5d81d9c754ac1c8db8.jpg'] Number of training images for Kabutops : 42 Training samples for Kabutops : ['9a0761e8939e474893e0d81b9cea01d0.jpg', '9d770b85b42a4ada95517cf90bcdf7d6.jpg', 'c00d4411691648adad428d9f9ffe4419.jpg', '55f467f4c7f54b22816dd1fe18cefac7.jpg', 'f4479f132e864ba39c80e0e81e031deb.jpg'] Number of training images for MrMime : 45 Training samples for MrMime : ['fd841ea8b79e4b0faa47d8ad5444ffa4.jpg', 'db68d422b88e47488bf26e86dae34ac0.jpg', '81f09842d2fa46f1a91d7763cf983ce2.jpg', '804b0ef6c972492eba27264ef229f47f.jpg', '4ea9ea961ac643b39a07d65e337d9781.jpg'] Number of training images for Seaking : 46 Training samples for Seaking : ['0cce006aee5e499c89cd1961f5fda4eb.jpg', '41b609352fe142f0a3e6f093efa4670a.jpg', 'e220e3904ea545c3a4ec8adf19cc9e09.jpg', 'ef77afd366eb482a8736c7809b44b74e.jpg', '72f4dba439084d4690ef6f3e62a233c3.jpg'] Number of training images for Voltorb : 55 Training samples for Voltorb : ['c79381e1340747d1b7f42c48719a6bf6.jpg', '7c870a2696754f1f810bc11ad103756c.jpg', '707c80fee6d54437ba646de28f049701.jpg', 'a599bcd0351f40c78c74c63725f6a7a4.jpg', '8378dfbad88d481a87a16d97ff4bb4be.jpg'] Number of training images for Tauros : 54 Training samples for Tauros : ['6f4a5f90c007486e9732f26bac21e49f.jpg', '1d3ccbc7246445d7bce8e700da5aead6.jpg', '007ed3ff7bad436682e3c637c4229abb.jpg', '806533a4d6144a2fa67c2e9967a453d8.jpg', '54dc86b6687841c695b4aba6b580e239.jpg'] Number of training images for Abra : 35 Training samples for Abra : ['0282b2f3a22745f1a436054ea15a0ae5.jpg', 'c1c82c89958a4839a074910de72df05a.jpg', '34532bb006714727ade4075f0a72b92d.jpg', 'b0b6de31451f4e7aa3411fe0963a7f4f.jpg', '4e554e4a0f624656a7b1542b679b6157.jpg'] Number of training images for Nidoking : 52 Training samples for Nidoking : ['55cfb47595ec42d59f6a049c063145a9.jpg', '2c014b04f1c64ae6821c19d03c148a19.jpg', '623da22c5b064b1e9a78c8f18160f156.jpg', '65c03191d06f45e980ff6dcae00f41f6.jpg', '9f69cb609e3541549c1f6522ffee9831.jpg'] Number of training images for Poliwag : 51 Training samples for Poliwag : ['f7d38a9106f64a7280f3eb243ad89624.jpeg', 'a581d66b4c4c4a61a2e84cb318718187.jpg', 'd421df6d5dd94aed9c801d91d6ab701b.jpg', '93bb59bca3a8437d81959a0e2ed4d004.jpg', '2b98c225d39040aba68c203d05ea5ecb.jpg'] Number of training images for Charmander : 51 Training samples for Charmander : ['00000022.png', '00000000.png', '00000008.png', '6d776b7e8fb34b34bef0d3175d023490.jpg', '00000035.jpg'] Number of training images for Ekans : 36 Training samples for Ekans : ['cc305034a9a14613bd5cf6e67c14bed8.jpg', 'd9ec98f5d972459aa17b2d67954ec688.jpg', 'ddc5383db4074a228ddbcc48f2026b97.jpg', '3a789f6299194035baa2aa13df6e88d7.jpg', 'add2608ca4344fcb8c3a5157a2f7cb3a.jpg'] Number of training images for Jolteon : 51 Training samples for Jolteon : ['45ed0e891a05490da6253270889b69ae.jpg', '64903286eff44a53a024c7da7153ae09.jpg', 'b88587e76d964adb980cade7094eede2.jpg', '2f7fb89ef10948d9a5bb5db16b788aa6.jpg', 'd7e651b8adcb4154b9c1ea0f98ed1699.jpg'] Number of training images for Ninetales : 44 Training samples for Ninetales : ['b3328d1dd7d040a8ae694b95ac456dee.jpg', '7ce0fa5da16e42e2b33b885fc57efbec.jpg', 'a094193bd80f4ebabc741711a5de4333.jpg', '2eaf301e83814f91b2f901d46ebd4426.jpg', '3afcb694bafb4cf492b8c2c76b400eed.jpg'] Number of training images for Wigglytuff : 57 Training samples for Wigglytuff : ['1922cd0fb4bb488bbe65bdf9eea8c55e.jpg', 'b7dd3c3ef237442f919c63ad252f775b.jpg', 'a7c7ca000d4f448dad932bacd6257800.jpg', '60018e33617544b19cf0f481b6a8d78f.jpg', '5bbea1401b034618a39266465337d925.jpg'] Number of training images for Dewgong : 43 Training samples for Dewgong : ['391742f96ce54d41afe7b9a89b6ef897.jpg', '9770de189bb6474b83d1cf0a069d8cfc.jpg', 'd57116deea574aa28211cb3740561f0c.jpg', '2d97213fc83b4c6da0ea3df16cf5f9c1.jpg', 'f96bec5f7dcd44269b5456f39cd3eb88.jpg'] Number of training images for Machop : 41 Training samples for Machop : ['bb51538ba7ff401982edfbf6863619b5.jpg', '6eb0a5e8345d4b63866cb9ca457a64fa.jpg', '5ea790b2abbe40bb9dfef82dd02a4465.jpg', '3537a8240cf2417eb1836021e1d54549.jpg', '7c5eee14f93b4174b12afe97db9b1b0b.jpg'] Number of training images for Kangaskhan : 51 Training samples for Kangaskhan : ['36a8c3e046d8434bab67751830093d00.jpg', '1f1a4ce23898453d831c9096716498b7.jpg', '0ee265b9ba7f405c96dd76ec39919d38.jpg', '8174fee44a07451c815be5978bf9363d.jpg', '9497d12c680c42eba9e32e32097a0b9f.jpg'] Number of training images for Goldeen : 47 Training samples for Goldeen : ['4a74de68ba234e0196c3b699e8af40b1.jpg', 'e9593a666e2444b7852a2617fd017a44.jpg', '61ab64cbebb74d28b535432d1df3c6cf.jpg', '4ee2a5edb09c44359cc34849460bf7ab.jpg', '2d8d6e1d0056454e9ed76a831d8bea86.jpg'] Number of training images for Exeggutor : 50 Training samples for Exeggutor : ['57d040767a7042189902fd1a2352f824.jpg', '5b7864adb8df4d2a9d8096a505f3a46d.jpg', 'f47d07c8a3244ad7bf8ba81427d698c9.jpg', '4a7b2502a5fa4554ac145a6d4a909ae6.jpg', '15114835aba744358bf17d2e90b3fc31.jpg']
# Plot some training images from the dataset
nrows = len(CLASS_LABELS)
ncols = 4
training_examples = []
example_labels = []
fig = plt.gcf()
fig.set_size_inches(ncols * 4, nrows * 3)
for c_label in CLASS_LABELS:
training_class_dir = os.path.join(TRAIN_DIR, c_label)
training_class_files = os.listdir(training_class_dir)
for j in range(ncols):
training_examples.append(training_class_dir + '/' + training_class_files[j])
example_labels.append(c_label)
# print(training_examples)
# print(example_labels)
for i, img_path in enumerate(training_examples):
# Set up subplot; subplot indices start at 1
sp = plt.subplot(nrows, ncols, i+1)
sp.text(0, 0, example_labels[i])
# sp.axis('Off')
img = mpimg.imread(img_path)
plt.imshow(img)
plt.show()